
#1 整数类型
"""
进制种类    引导符号     描述
十进制     无           默认情况，例如：365, 789
二进制     0b或0B       由字符0和1组成，例如：0b10101, 0B10101
八进制     0o或0O       由字符0到7组成，例如：0o765, 0O765
十六进制   0x或0X       由字符0到9，a到f或A到F组成，例如：0x987A, 0X987A
"""
print(110) # 十进制
# 110
print(0b01101110, 0B01101110) #二进制，引导符 0b 或 0B
# 110 110
print(0o156, 0O156) #八进制，引导符 0o 或 0O
# 110 110
print(0x6E, 0X6E) #十六进制，引导符 0x 或 0X
# 110 110

#2 浮点数类型（小数，复数）
"""
!两个浮点类型的数在进行运算时，有一定的概率运算结果后增加一些“不确定的”尾数
"""
print(0.1+0.2) # 存在不确定的尾数
# 0.30000000000000004
print(round(0.1+0.2, 1))    # 通过round保留1位小数
# 0.3
print(round(111+222, -2))   # 通过round得到百位数
# 300

x1 = 1.99E14
print('科学计数法：', x1 , 'x的数据类型：', type(x1))
# 科学计数法： 199000000000000.0 x的数据类型： <class 'float'>

"""
Python中的复数与数学中的复数形式完全一致，由实部和虚部组成。
在Python中实数部分使用.real表示，虚数部分使用.imag表示
"""
x2 = 123 + 456j
print('实数部分：', x2.real)
# 实数部分： 123.0
print('虚数部分：', x2.imag)
# 虚数部分： 456.0


#3 字符串类型
"""
使转义字符失效的符号 r 或 R
"""
print('北\t京\t欢\t迎\t你')
# 北	京	欢	迎	你
print(r'北\t京\t欢\t迎\t你')
# 北\t京\t欢\t迎\t你
print(R'北\t京\t欢\t迎\t你')     # 等义
print(r'C:\Users\xiaowu265')   # 常用于路径

# 字符串切片
str1 = '北京欢迎你'
print(str1[4])
# 你
print(str1[2:4])
# 欢迎
print(str1[-3:-1]) # 等义
print(str1[:2])
# 北京
print(str1[2:])
# 欢迎你

# 常用的字符串操作
"""
操作符      描述
x+y        将字符串x与y连接起来
x*n或n*x    复制n次字符串x  
x in s     如果x是s的子串，结果为True，否则为False
"""
print("北京" + "欢迎你")
# 北京欢迎你
print("." * 6)
# ......
print('he' in 'hello')
# True

#4 布尔值为False的情况
"""
1 False或者None
2 数值中的0，包含0, 0.0, 虚数0
3 空序列，包含空字符串、空元组、空列表、空字典、空集合
4 自定义对象的实例，该对象的__bool__()方法返回False或__len__()方法返回0
"""